<?php
namespace Amis\dataviewer;

use Amis\Basics\AmisBasics;

/**
 * 在 React 项目中使用 Icon 需要引入 @fortawesome/fontawesome-free，
 * 然后在代码中 import '@fortawesome/fontawesome-free/css/all.css'，
 * 还有相关的 webpack 配置，具体请参考 amis-react-starter 里的配置
 */
class Icon extends AmisBasics
{
    public string $type = 'icon	';

    public function className(string $className)
    {
        $this->className = $className;
        return $this;
    }

    /**
     * icon 名称，支持 fontawesome v4 或使用 url
     * @param string $icon
     * @return $this
     */
    public function icon(string $icon)
    {
        $this->icon = $icon;
        return $this;
    }

    /**
     * icon 类型，默认为fa, 表示 fontawesome v4。也支持 iconfont,
     * 如果是 fontawesome v5 以上版本或者其他框架可以设置为空字符串
     * @param string $vendor
     * @return $this
     */
    public function vendor(string $vendor)
    {
        $this->vendor = $vendor;
        return $this;
    }
}